/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package be.vdab.servlets;

import java.io.IOException;
import java.util.Calendar;
import java.util.Date;

import javax.servlet.RequestDispatcher;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import be.vdab.entities.Adres;
import be.vdab.entities.Persoon;
import be.vdab.util.Begroeting;
import be.vdab.util.RequestStatistiek;

/**
 * 
 * @author thijs.maes
 */
@WebServlet(urlPatterns = "/welkom.htm", name = "welkomservlet")
public class WelkomServlet extends HttpServlet {

	private static final long serialVersionUID = 1L;
	private static final String VIEW = "/WEB-INF/JSP/welkom.jsp";
	private final Persoon zaakvoerder = new Persoon();
	private final Adres adres = new Adres();
	private int aantalKeerBekeken;
	private final RequestStatistiek requestStatistiek = new RequestStatistiek();

	/*
	 * public WelkomServlet() { zaakvoerder.setVoornaam("Luigi");
	 * zaakvoerder.setFamilienaam("Perperone");
	 * zaakvoerder.setAantalKinderen(7); zaakvoerder.setGehuwd(true);
	 * adres.setStraat("Grote Markt"); adres.setHuisNr("3");
	 * adres.setPostcode(9700); adres.setGemeente("Oudenaarde");
	 * zaakvoerder.setAdres(adres); }
	 */

	@Override
	public void init() throws ServletException {
		ServletContext servletContext = this.getServletContext();
		zaakvoerder.setVoornaam(servletContext.getInitParameter("voornaam"));
		zaakvoerder.setFamilienaam(servletContext.getInitParameter("familienaam"));
		zaakvoerder.setAantalKinderen(Integer.valueOf(servletContext.getInitParameter("aantalKinderen")));
		zaakvoerder.setGehuwd(Boolean.valueOf(servletContext.getInitParameter("gehuwd")));
	}

	private synchronized int verhoogAantalKeerBekeken() {
		return ++aantalKeerBekeken;
	}

	@Override
	protected void doGet(HttpServletRequest request,
			HttpServletResponse response) throws ServletException, IOException {

		/*
		 * Calendar calendar = Calendar.getInstance(); int uur =
		 * calendar.get(Calendar.HOUR_OF_DAY); String boodschap; if (uur >= 6 &&
		 * uur < 12) { boodschap = "Goede morgen"; } else if (uur >= 12 && uur <
		 * 18) { boodschap = "Goede middag"; } else { boodschap = "Goede avond";
		 * }
		 */
		Calendar calendar = Calendar.getInstance();
		calendar.set(Calendar.YEAR, 1980);
		calendar.set(Calendar.MONTH, Calendar.AUGUST);
		calendar.set(Calendar.DAY_OF_MONTH, 1);
		Date zaakGestart = calendar.getTime();
		request.setAttribute("zaakGestart", zaakGestart);
		requestStatistiek.voegRequestToe(request);
		request.setAttribute("zaakvoerder", zaakvoerder);
		request.setAttribute("boodschap", new Begroeting());
		request.setAttribute("aantalKeerBekeken", verhoogAantalKeerBekeken());
		request.setAttribute("aantalPizzasVerkocht", 23000);
		RequestDispatcher dispatcher = request.getRequestDispatcher(VIEW);
		dispatcher.forward(request, response);
	}
}
